Performance Bounceback

Gameplay Integrity

Criteria Meet Specification

Gameplay Maintained (Spirit of Challenge)

No trampolines or lights removed, balls spawn every 0.5 seconds, picking up and throwing ball at trampoline increases score, score is visible from starting area

Batching

Criteria Meet Specification

Turn on Dynamic and Static Batching

Turn on the dynamic and static batching options

Use Static Batching

Statically batch visible GameObjects that never move

Physics

Criteria Meet Specification

Physics Update Rate

Set the physics update rate to the same as the target framerate (90fps)

Rigidbodies

Moving objects with colliders all have rigidbodies on them. Moving objects are also not marked as Static.

Limit Number of Active Rigidbodies

Remove unnecessary rigidbodies.

Objects

Criteria Meet Specification

Object Pooling

Replace Instantiate and Destroy with Object Pooling for Ball spawning (script should still be called BallSpawner)

Code

Criteria Meet Specification

Caching

Store variables/references when there is a change, rather than creating/updating them every frame.

Code Cleanup

Remove or comment out code that would not be used in a final release

Final Polish

Criteria Meet Specification

Framerate

The game runs consistently at a minimum of 90 FPS with no frame rate drops below that.

Lighting

Criteria Meet Specification

Forward or Deferred Lighting

Turn the lighting rendering path to the one highly recommended for VR

Anti Aliasing

Enable 4x or 8x MSAA

Baked Lighting

Use baked lighting to reduce realtime performance cost

Light Probes

The game's moving objects need lighting, but realtime lights are expensive. Use light probes for all your realtime lights (the entire scene within view of the player must be lit with lightprobes). Make sure the probes are set up so there are no serious artifacts or light popping.